package com.tao.ormlib;

import com.j256.ormlite.dao.Dao;
import com.j256.ormlite.stmt.Where;

import java.util.List;

public interface IDao<T> {

    // 向user表中添加一条数据
    int add(T data);    // 向user表中添加一条数据

    int add(List<T> data);

    // 如果不存在则添加
    T addIfNotExists(T data);

    // 删除user表中的一条数据
    int delete(T data);


    // 修改user表中的一条数据
    int update(T data);

    // 查询user表中的所有数据
    List<T> queryAll();

    // 根据ID取出用户信息
    T queryById(int id);

    boolean updataIfExist(T data, Where where);


    boolean uesTransaction(ITransaction transaction);

    Dao.CreateOrUpdateStatus addOrUpdate(T data);

    int addOrUpdateByWhere(T data, QueryWhere queryWhere);

}
